Git Product home page Git Product logo

Comments (10)

davehorton avatar davehorton commented on July 24, 2024 1

In case anyone is interested, here is a gist of a grpc debug log when I try to connect to a dialogflow agent in europe-west1.

I'm creating the credentials like this:

	auto callCreds = grpc::ServiceAccountJWTAccessCredentials(var, INT64_MAX);
	auto creds = grpc::CompositeChannelCredentials(channelCreds, callCreds);
	m_channel = grpc::CreateChannel(endpoint, creds);

where 'var' has the json key for the service account of the gcp project associated with the dialogflow agent.

from drachtio-freeswitch-modules.

davehorton avatar davehorton commented on July 24, 2024 1

this is addressed in PR 67.

Will close this issue once merged

from drachtio-freeswitch-modules.

davehorton avatar davehorton commented on July 24, 2024

I think the change would be more than that, that session name would need to be different as well?

from drachtio-freeswitch-modules.

ruipfmendes avatar ruipfmendes commented on July 24, 2024

true, the session name would also have to be changed depending on the region
projects/PROJECT_ID/locations/REGION_ID/agent/sessions/SESSION_ID

do you think this is something that will be supported by drachtio in the future?

from drachtio-freeswitch-modules.

davehorton avatar davehorton commented on July 24, 2024

Yes, I would like to support this. Just trying to figure out how to make it backwards compatible. Right now, someone can specify a project as either

project-id

or

project-id:environment

it seems like I need to provide a way for someone to additionally specify location-id

from drachtio-freeswitch-modules.

davehorton avatar davehorton commented on July 24, 2024

I've made changes to support this but not working yet. Following the instructions here, but getting back an error:

Request had invalid authentication credentials. 
Expected OAuth 2 access token, login cookie or other valid authentication credential.

One thing not clear in the instructions is this statement they make:

 if you need to manually provide a credentials file in your code, you need to take one additional step 
when calling a regionalized endpoint. Set the scope to https://www.googleapis.com/auth/cloud-platform 
when generating your authentication credentials

They then give an example of doing so in Java; however, I can not find any place in the C++ grpc api to accomplish the same thing (i.e., setting the scope). If anyone with knowledge in this area wants to contribute a thought, please do. Otherwise I'm kind of blocked at the moment..

from drachtio-freeswitch-modules.

davehorton avatar davehorton commented on July 24, 2024

current changes are on the feature/dialogflow-location-support branch.

I've also updated to grpc v1.39.1 for testing on this branch.

from drachtio-freeswitch-modules.

davehorton avatar davehorton commented on July 24, 2024

related:

grpc/grpc#27098

from drachtio-freeswitch-modules.

davehorton avatar davehorton commented on July 24, 2024

here is an example shell script showing how to build with the proper versions of grpc and googleapis

from drachtio-freeswitch-modules.

davehorton avatar davehorton commented on July 24, 2024

ansible script updated here

from drachtio-freeswitch-modules.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.