![]() |
TMS-Google Kalender, APPIDS.INC
Hallo,
ich probiere gerade den Google-Kalender vom TMS Cloud Pack aus. // PLEASE USE A VALID INCLUDE FILE THAT CONTAINS THE APPLICATION KEY & SECRET // FOR THE CLOUD STORAGE SERVICES YOU WANT TO USE // STRUCTURE OF THIS .INC FILE SHOULD BE // // const // GAppkey = 'xxxxxxxxx'; // GAppSecret = 'yyyyyyyy'; Was soll ich denn hier reinschreiben ??? Woher bekomme ich diese ominöse AppId ? #Update# Ich habe jetzt bei AppEngine eine AppId erzeugt. Fehlermeldung ungültige Client_Id. Danke Heiko |
AW: TMS-Google Kalender, APPIDS.INC
Ich kenne es zwar nicht von Google, ist aber wohl so wie bei MS. Und zwar melden sich die Anwendungen nicht mit Nutzer/Passwort an, sondern eben mit so einem Key (oder was auch immer).
Oft läuft das dann so, dass eine Anwendung auf die Webite des Anbieters (Google, MS, ...) weiterleitet, der User sich dort anmeldet und der App Brechtigungen erteilt. Diese bekommnt dann so einen Key und kann sich damit anmelden. Vorteil: Die App kennt die Anmeldedaten nicht, die Brechtigungen können festgelegt werden (z.B. nur Kalender oder nur Adressen) und die Brechtigung kann jederzeit entzogen werden. |
AW: TMS-Google Kalender, APPIDS.INC
Hallo,
nennt sich 2-Pass-Auth (OAuth2). Habe die Id mittlerweise bei Google erzeugt. Leider bekomme ich keine Kalender geholt. HTTP1/ 403 forbidden Heiko |
AW: TMS-Google Kalender, APPIDS.INC
Schreib am besten dem TMS Support, die reagieren i.d.R. recht zügig auf Anfragen.
|
AW: TMS-Google Kalender, APPIDS.INC
Die ID bekommst Du direkt von Google. Dort musst Du Deine Anwendung registrieren. Also mit Googlekonto anmelden und dann zu
![]() Steht auch alles so im Cloud-Pack in der "TMS Cloud Pack.pdf" im Verzeichnis "Doc". :roll: Sorry... Beitrag #3 nicht gelesen... Ich habe das Pack auch im Einsatz. Bei mir geht's... |
AW: TMS-Google Kalender, APPIDS.INC
Hallo,
habe es hinbekommen. Wichtig ist auch die Konfiguration (das Einschalten) per Google-Konsole. Hm, die Doc habe ich gelesen, aber erst ab der Seite mit dem Kalender ;) ![]() Was mich jetzt nervt, ist die Anmeldung bei Google. Kann man das nicht umgehen ? Im Bsp. wird der Access-Token in einer Ini gespeichert. Wie lange bleibt denn dieser Token gültig ? Heiko |
AW: TMS-Google Kalender, APPIDS.INC
Du musst wirklich gemäß den Beispielen arbeiten...
Im Event "OnReceivedAccessToken" musst Du unbedingt die Token mit "SaveTokens" entweder in einer Ini oder in der Registry speichern. Diese gelten dann nur an diesem Rechner und für den angemeldeten Benutzer! Und beim verbinden dann:
Delphi-Quellcode:
Ich habe meinen Kalender seid knapp zwei Monaten in Betrieb und musste mich noch nie neu anmelden... :-D
var
acc : Boolean; begin AdvGCalendar1.LoadTokens; try acc := AdvGCalendar1.TestTokens; if not acc then acc := AdvGCalendar1.RefreshAccess; if acc then begin AdvGCalendar1.GetCalendars; // tue irgenwas sinnvolles ;-) end else AdvGCalendar1.DoAuth; except on E: SysUtils.Exception do begin if (Pos('CANNOT OPEN URL', AnsiUpperCase(E.Message)) > 0) or (Pos('UNABLE TO INITIALIZE WININET', AnsiUpperCase(E.Message)) > 0) then begin MessageDlg('Es kann keine Verbindung zum Internet hergestellt werden!', mtError, [mbOK], 0); end else raise; end; end; end; |
AW: TMS-Google Kalender, APPIDS.INC
Ich würde an dieser Stelle einen Tipp geben, TMS hat den bisher leider noch nicht umgesetzt.
Editiert die
Code:
. Ansonsten könnten User das Fenster kleiner ziehen und es hagelt Fehler.
CloudBase.pas
Code:
function TCloudBase.CreateOAuthForm(url: string; CallBack: TWebBrowserBeforeNavigate2; CallBackComplete: TWebBrowserNavigateComplete2): TForm;
begin FOAuthForm := TForm.CreateNew(nil); // FOAuthForm.BorderIcons := [biSystemMenu, biMaximize]; // Change FOAuthForm.Constraints.MinWidth := 640; // Change: Sonst meldet Dropbox Script-Fehler FOAuthForm.Constraints.MinHeight := 480; // Change: Sonst meldet Dropbox Script-Fehler // FBrowser := TWebBrowser.Create(FOAuthForm); FBrowser.Align := alClient; FBrowser.SetParentComponent(FOAuthForm); FBrowser.OnBeforeNavigate2 := CallBack; FBrowser.OnNavigateComplete2 := CallBackComplete; FBrowser.Navigate(url); FOAuthForm.Width := AuthFormSettings.Width; FOAuthForm.Height := AuthFormSettings.Height; FOAuthForm.Caption := AuthFormSettings.Caption; FOAuthForm.Position := poScreenCenter; FOAuthForm.OnClose := DoFormClose; FOAuthForm.ShowModal; Result := FOAuthForm; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:32 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz