Você pode criar um plug-in de conta para o Trello, de modo que uma conta Trello possa ser criada a partir do painel "Conta Online" nas Configurações do Sistema. Você poderia usar o módulo QML do Ubuntu.OnlineAccounts para fazer login, assim:
import QtQuick 2.0
import Ubuntu.OnlineAccounts 0.1
Rectangle {
width: 400
height: 300
AccountServiceModel {
id: accounts
service: "trello-board"
}
ListView {
id: listView
anchors.fill: parent
model: accounts
delegate: Item {
width: parent.width
height: 60
AccountService {
id: accts
objectHandle: accountServiceHandle
onAuthenticated: { console.log("Access token is " + reply.AccessToken) }
onAuthenticationError: { console.log("Authentication failed, code " + error.code) }
}
Text {
anchors.fill: parent
text: providerName + ": " + displayName
MouseArea {
anchors.fill: parent
onClicked: accts.authenticate(null)
}
}
}
}
}
Este código fornecerá o token OAuth. Para criar a conta em primeiro lugar, você precisa criar os seguintes arquivos:
-
/usr/share/accounts/providers/trello.provider
-
/usr/share/accounts/services/trello-board.service
-
/usr/share/accounts/qml-plugins/trello/Main.qml
Dado que o Trello usa o OAuth 1.0 como o Flickr e o Twitter, basta criar os arquivos acima usando a versão do twitter ou do flickr como modelo e modificá-los conforme necessário (para o arquivo .service, você pode usar flickr-sharing.service
); Em trello.provider
, você precisará alterar os pontos de extremidade da API da seguinte forma:
<setting name="RequestEndpoint">https://trello.com/1/OAuthGetRequestToken</setting>
<setting name="TokenEndpoint">https://trello.com/1/OAuthGetAccessToken</setting>
<setting name="AuthorizationEndpoint">https://trello.com/1/OAuthAuthorizeToken</setting>
E, claro, altere os outros campos (URL de retorno de chamada, ID do cliente e segredo) para corresponder aos que você definiu ao registrar seu aplicativo no Trello. Se tudo correr bem, você poderá criar uma conta Trello no painel "Contas on-line" nas Configurações do sistema.