PHP e Microsoft Teams: generare link videocall

  • Creatore Discussione Creatore Discussione Giulo77
  • Data di inizio Data di inizio

Giulo77

Utente Attivo
15 Mar 2018
30
0
6
47
Ciao a tutti,
da tempo ho creato una sorta di calendario integrato nella mia applicazione web per gestire automaticamente appuntamenti. Lato Server utilizzo PHP per mandare la mail con allegato il file ics ed ora vorrei anche integrare la possibilità di generare automaticamente un link di video chiamata con Microsoft Teams, vista l'impossibilità del periodo che stiamo vivendo di poter spostarmi da cliente a cliente. Non ho trovato qualcosa di chiaro in rete a riguardo di possibili API per poter fare questo. Alla fine penso che sia un discorso di creare una sorta di stanza privata e generare il suo link url però non ho idea da che parte iniziare. Qualcuno ha esperianza in questo campo?
 
Non ho trovato qualcosa di chiaro in rete a riguardo di possibili API per poter fare questo.



Spero sia utile....
 


Spero sia utile....

Ti ringrazio, ho letto ma sono sincero, non ci ho capito molto! Non trovo nessun esempio in rete, mi sembra molto strano.
 
Non trovo nessun esempio in rete, mi sembra molto strano.
Per le applicazioni ad alto livello non ci sono esempi (di codice custom), ci sono solo chiamate API....

In definitiva se segui i link dell'object Team arrivi alla documentazione dello stesso con esempi di chiamate e risposte :

Request
Codice:
PUT https://graph.microsoft.com/v1.0/groups/{id}/team Content-type: application/json {    "memberSettings": {    "allowCreateUpdateChannels": true  },  "messagingSettings": {    "allowUserEditMessages": true,    "allowUserDeleteMessages": true  },  "funSettings": {    "allowGiphy": true,    "giphyContentRating": "strict"  } }

Response
Codice:
HTTP/1.1 201 Created Content-type: application/json Content-length: 401 {  "memberSettings": {    "allowCreateUpdateChannels": true,    "allowDeleteChannels": true,    "allowAddRemoveApps": true,    "allowCreateUpdateRemoveTabs": true,    "allowCreateUpdateRemoveConnectors": true     },  "guestSettings": {    "allowCreateUpdateChannels": true,    "allowDeleteChannels": true  },  "messagingSettings": {    "allowUserEditMessages": true,    "allowUserDeleteMessages": true,    "allowOwnerDeleteMessages": true,    "allowTeamMentions": true,    "allowChannelMentions": true     },  "funSettings": {    "allowGiphy": true,    "giphyContentRating": "strict",    "allowStickersAndMemes": true,    "allowCustomMemes": true  } }
 
Ok, ho visto che c'è semprr il tab http ma dino ad ora non ho mai usaro nulla del genere quindi non saprei proprio come integrare questo codice con PHP
 
Ok, ho visto che c'è semprr il tab http ma dino ad ora non ho mai usaro nulla del genere quindi non saprei proprio come integrare questo codice con PHP
I servizi a pagamento come Teams, Zoom, bluejens etc... non sviluppanoo per terzi, e tutti i Dev non rilasciano codici gratis...
 
Ah ok, non ho letto da nessuna parte che era a pagamento. Peccato...dovrei capire chi contattare allora per sapere cosa mi costa...alla fine penso che il mio lavoro consiste nel fare una chiamata con request organizzarore, partecipanti, forse data e ora e come response il link url per partecipare alla call.
 
Beh allora decade il discorso di comunity...sono cueioso comunque se ci fosse qualcuno che lo ha fatto quanto chiede, sempre ad essere sicuri che poi il codice fornito funziona davvero!
 
Mi sono espresso male allora, intendevo proprio qualcosa con licenza MIT ovviamente....evidente che quindi non ho sbagliato a ricercare ma semplicemente non c'è nulla. Peccato...a pagamento ci vado a capire realmente cosa mi serve, ad occhi chiusi direi proprio di no.
 
a pagamento ci vado a capire realmente cosa mi serve, ad occhi chiusi direi proprio di no.
Devi fartele scrivere ad-hoc, nessuno ti rilascia codice di progetti non generici....
Ci sono molte variabili che in base al progetto cambiano, di conseguenza è utopistico pensare di adattare delle API di un progetto, a meno che i progetti non siano stati implementati dallo stesso dev...

Per intenderci, in questo cosa ci capisci???
PHP:
public function createMeeting(){
    $meeting=$this->parameters->toArray();
    $map=['agenda','start_time','duration','timezone','pin','settings'];
    $to_return=['topic'=>$meeting['name']];
    foreach ($map as $item){
        if($item=='pin')$to_return['password']=$meeting[$item];
        else $to_return[$item]=$meeting[$item];
    }
   clear_nulls($to_return);
    $to_return['type']=2;
    $to_return['settings']['waiting_room']=false;
    //dd($to_return);
    $headers = [
        'Authorization' => 'Bearer ' . $this->userAccessToken->access_token,
        'Content-Type'        => 'application/json',
    ];
    $response=$this->client->request($this->calls[$this->bindTo]['method'],
        $this->calls[$this->bindTo]['url'],
        [
            'headers'=>$headers,
            'json'=>$to_return
        ]
    );
    return json_decode($response->getBody()->getContents(),true);
}
public function getMeetings(){

    $headers = [
        'Authorization' => 'Bearer ' . $this->userAccessToken->access_token,
        'Accept'        => 'application/json',
    ];

    $response=$this->client->request($this->calls[$this->bindTo]['method'],
        $this->calls[$this->bindTo]['url'],['headers'=>$headers]);
   return json_decode($response->getBody()->getContents(),true);
}
Una mazza secca, perchè ti manca il model, dati, field di piattaforma....
questo è per zoom e bluejeans (solo get meeting e create meeting), implementato con API custom...



Spero di aver spiegato bene il concetto
 
Si sei stato chiarissimo...ho chiesto solo perchè al di la delle molteplici cose che si possono fare in questo caso la mia richiesta sta alla base dell'utilizzo di un prodotto di messaggistica istantanea o call quindi ho immaginato di trovare qualcosa di base...ma come dici tu è utopistico.
Un po'come quando ho scelto di utilizzare PHPMailer, ho usato le funzioni messe a disposizione ma qui siamo a livello di sapere come fare qurlle funzioni di cui ignoro totalmente la fattibilità
 
Il problema è il solito, proporre uno strumento comune, conosciuto altrimenti non capiscono la serietà della cosa. Sarà la moda ma ora vogliono tutti usare sto Teams
 
proporre uno strumento comune
Infatti esistono i dev per questo, che fanno sembrare le cose trasparenti e comuni, anche se sotto ci sono ore di lavoro

Sarà la moda ma ora vogliono tutti usare sto Teams
Un prj serio con teams lo si sviluppa in almeno 3/5 sviluppatori e non soli....
quindi o hai conoscenze avanzate di programmazione e sistemistiche altrimenti metti in piedi una ciofeca...

Non si diventa meccanici sapendo cambiare l'olio della macchina!
 
Ultima modifica:

Discussioni simili