Sto migrando il mio forum di assistenza da un helpdesk (YouTrack) a Discourse.
Vorrei utilizzare l’API per eseguire le seguenti operazioni:
Recuperare gli utenti (nome, nome utente, e-mail) da YouTrack e creare utenti analoghi in Discourse. Non impostare le password per loro!
Inviare un invito a tutti questi utenti per registrarsi su Discourse, utilizzando gli stessi nomi utente e indirizzi e-mail (affinché possano creare nuove password).
Recuperare determinati argomenti, allegati e commenti da YouTrack e ricrearli in Discourse.
Per fare ciò, sarà necessario che gli stessi utenti esistano in Discourse in modo che possano essere assegnati come autori di argomenti e commenti. Questo deve essere fatto indipendentemente dal fatto che tali utenti si siano registrati su Discourse dopo aver ricevuto l’invito o meno.
Problemi:
a) La documentazione dell’API indica che il campo “password” è obbligatorio quando si crea un utente. Come posso aggirare questo problema?
b) Qual dovrebbe essere lo stato di tale utente (creato tramite API, ha già alcuni argomenti sotto il suo nome, ma non è ancora stato confermato e non ha impostato la password)?
Creerei gli utenti, le categorie, gli argomenti e i post utilizzando uno script di importazione anziché l’API.
Non sono del tutto sicuro di quale sia il modo migliore per inviare un’email a ogni singolo utente, ma un approccio potrebbe essere quello di lasciare gli utenti attivati dallo script di importazione e permettere loro di ricevere un messaggio di riepilogo via email, in modo che notino che l’email di riepilogo include le istruzioni per accedere al nuovo forum.
Ho provato a usare questo script tuo, che sembra funzionare, ma continuo a ricevere un messaggio di errore:
./create-user 'Test User Four' me@[domain] test4 41 default
Creating user: test4 user test4 created. . . Adding to group 41. . . {"errors":["You supplied invalid parameters to the request: usernames"],"error_type":"invalid_parameters"}
Non riesco a capire cosa ho sbagliato. Inoltre, è possibile non impostare il gruppo e la password qui?
Non ne sono sicuro, ma sembra che tu abbia un numero di gruppo errato e stia ricevendo un errore? Se sta aggiungendo l’utente, allora sembra che non stia impostando un gruppo già esistente.
Potresti modificare lo script in modo che non imposti una password, penso, ma impostare una password casuale che nessuno conosce è praticamente la stessa cosa che non avere password.
Se hai bisogno di personalizzazioni e hai un budget, potrei farlo probabilmente più tardi oggi.
Il numero del gruppo è corretto, l’ho preso da /groups.json. Comunque, il mio obiettivo attuale è trovare la soluzione con gli strumenti disponibili. Grazie comunque per la tua offerta e il tuo aiuto!
Hmm. Beh, lo script deve assolutamente essere aggiornato per inviare l’utente e la chiave API in un’intestazione invece che nell’URL. Anche se sono abbastanza sicuro che funzionasse due anni fa, sembra che sia stato scritto da qualcuno con due anni di esperienza in meno rispetto a quella che ho ora.
Non esegue alcun controllo degli errori per verificare se l’utente viene effettivamente creato, quindi questo è qualcosa che cambierei se dovessi lavorarci.
Sembra che se non hai gruppi, lo script salti il tentativo di aggiungere l’utente al gruppo.
Ho trovato questo argomento cercando approcci per spostarsi tra Confluence, Youtrack e Discourse.
Potresti condividere i tuoi punti principali riguardo al passaggio da Youtrack a Discourse? La ragione è stata il costo, le prestazioni o problemi di ricerca?
Entrambe le ragioni sono vere. Volevamo offrire supporto ai nostri clienti su un forum pubblico, in modo che tutto il mondo potesse vedere quanto siamo bravi E YouTrack non era uno strumento adatto per questo per diversi motivi, tra cui il fatto che addebita una tariffa per utente.
La nostra configurazione attuale è la seguente:
Discourse per il supporto, le richieste di funzionalità e le discussioni. Anche i moduli “Contattaci” sui nostri siti web confluiscono lì (nuovi argomenti e utenti “in fase di staging” vengono creati automaticamente tramite API)
YouTrack per lo sviluppo: attività, bug e altri problemi
Confluence per la documentazione generale. Alcuni articoli che descrivono casi d’uso specifici vengono pubblicati anche su Discourse (manualmente)
Abbiamo anche provato a utilizzare Discourse come blog aziendale, ma in seguito abbiamo preferito Hashnode.
Grazie, Dmitry. Questa esperienza sarà utile per noi.
Stiamo per spostare la documentazione da Confluence. Ha una funzione di ricerca debole e costi elevati. Youtrack dispone di una funzione Knowledge Base con supporto per Markdown. Inoltre, offre un’importazione semplice e una funzione di ricerca accettabile. Youtrack è il nostro sistema di tracciamento dei bug e lo manterremo.
Se puoi confermare che la Knowledge Base di YT è lenta in produzione, potremmo valutare di non utilizzarla.
Discourse viene utilizzato come sistema di supporto di terzo livello. La funzione principale è salvare le soluzioni dei clienti e condividere le migliori pratiche. Purtroppo, l’utilizzo di Discourse da parte dei clienti è difficile. Il team di assistenza clienti utilizza infatti un Service Desk. Inoltre, è troppo complicato creare centinaia di categorie private per ogni cliente.