CTI
call
Contact
integration
Studio_Creatio
8.0

Hi Community, 

[FreedomUI]

Today I come with a problem regarding CTI integration with third party provider. I want to ask if anyone knows how to override call action link which you can find in the contact page, so instead of launching it to external handler or by built in CTI Creatio solution in cloud in communication panel, I want it to different action with my CTI Iframe that I have implemented with custon Angular component also in communication panel. The main problem here is how I override it (the onclick action in contact page and list for phone number input, but also in other places), to invoke my custom implementation ex. invoking call action on Iframe (I will do it with browser bus API) and then saving the call to the database (by calling to the webservice).

Second question: Is it a must to integrate the solution with the CTI Model or use Terrasoft.integration? I don't use CTI panel and creatio CTI interface for calling implementation, I use custom Angular component with IFrame, so I guess I don't need to. Not sure how to tackle it. I guess I could integrate with it somehow to use built in solutions. I have also seen some solutions overriding the BaseCtiProvider. How do I use it, so I could maybe also implement other things such as holdings etc.? 

Thanks for help in advance, Tuan.

Like 24

Like

6 comments

Hi Tuan,
 

Thank you for reaching out.
 

1. Unfortunately, you cannot currently override the call action in Freedom UI. The only possible way is to create your own Telephony integration.
 

2. You can find the main concepts and architecture of Creatio’s CTI model in the following documentation:
https://academy.creatio.com/docs/8.x/dev/development-on-creatio-platform/platform-customization/classic-ui/telephony-integration/overview
​​​​​​​

There are unfortunately no detailed step-by-step guides for implementing custom telephony providers. This is due to the high variability of external APIs and the level of customization required for each provider. We typically recommend reviewing existing provider implementations and using the Academy materials as a foundation.

Eduard Dovydovskyi,

Hi. Thanks for answering. 

Overriding by writing my own provider is something that I have recently found out. It could work for me.

I did make some implementations with it, but I encountered a new problem when changing the default message provider to my own. The issue is that clicking the phone number on contact page or list instead of invoking the makeCall method in the i guess CTI model and then provider it handles it as a tel:phoneNumber with default implementation and force me to use external appliation. Somehow the CTI Model does not invoke makeCall to then invoke makeCall on provider side. The init method does not even run with my provider.

I want to also mention that the code for my provider was copied 1:1 from VirtualCTIProvider. Just changed the define string to my own.

For on prem environemnt instead of getting the dialog, I get nothing. The link does not even work.

Do you have any idea how can i solve that? I'm almost done with the solution and that's should be my last obstacle.

Same issue is with third party providers. I'm not sure if it has something to do with licensing, but init runs normally, i get the log in the console, but the click on phone number still opens the external app modal/dialog. 

Hi Tuan,

You need to check if Telephony is enabled. To do so you need to:

1. Go to System settings in the System setup block, open the "Default messages exchange library" ("SysMsgLib" code) system setting and check if the default value is set.
 

2. Open the user profile page, e. g., by clicking Your profile on the Creatio homepage.

image
 

3. Open Additional settings

 

4. Open Call Center parameters setup


5. Check if "Disable Call Center integration" is unchecked and press the Save button. In the User profile press the Save button again.

image

 

This should enable Telephony. Hope it helps

Eduard Dovydovskyi,

Thanks for advice, but still it's not working. I had that option already set to enable. However I made some changes to my solution and it works better now. I still cannot click on phone number and invoke makeCall method, still I get the external dialog. Now it might have something to do with license operation which I don't really know how to set and where.

Everything will work fine if I use Webitel license, but I don't think that should be solution to the license issue.

Tuan,

Please register this issue for our support team directly via support@creatio.com so we could investigate it properly.

Show all comments
SmartPDF
Adobe
integration
Fillable_Forms
Sales_Creatio
8.0

Hello Community,

I would like to ask if Creatio has a capability to integrate with SmartPDF technology. For example, is it possible to set up an integration with Adobe Acrobat so that the content of created fillable forms can be extracted and mapped to the corresponding fields in Creatio?

Thank you very much in advance

Best regards,

Gábor Kónya

Like 0

Like

1 comments

Hello, 

Creatio does have the capability to integrate with external technologies like SmartPDF or Adobe Acrobat. This can be achieved through custom development or by leveraging existing tools and applications available in the Creatio Marketplace.

For your specific use case of extracting data from fillable forms and mapping it to Creatio fields, here are some options:

  1. Custom Integration: You can use Creatio's REST or SOAP API to integrate with Adobe Acrobat or SmartPDF. This would involve developing a custom solution to extract data from the forms and map it to the corresponding fields in Creatio.

https://academy.creatio.com/docs/8.x/dev/development-on-creatio-platform/architecture/development-in-creatio/integrations

https://academy.creatio.com/docs/8.x/no-code-customization/base-integrations/web-services/set-up-the-soap-web-service-integration

https://academy.creatio.com/docs/8.x/no-code-customization/base-integra…

2. Marketplace Applications: (https://marketplace.creatio.com/) Creatio Marketplace offers various add-ons and connectors that might already provide similar functionality. You can explore the Marketplace to find tools that align with your requirements.

3. Business Process Automation: Creatio's no-code/low-code tools can be used to create workflows that process the extracted data and populate the fields in the system.

Thank you for reaching out! 

Show all comments
DEEPLINK
integration
Service_Creatio
8.0

Hi community,

I have a question about Creatio deep links. A client needs to open a page in Creatio from a desktop application with certain fields pre-filled. When the link is opened, it should bring up the record-creation page with parameters passed from the desktop app. Is there any method or workaround to achieve this?
For example something like this:
mycreatio.com/0/Shell/#Section/Cases_ListPage[modal=CaseMiniPage/add]?title=CaseTitle&subject=CaseSubject

Like 1

Like

1 comments
Best reply

There is nothing out of the box that does this that I am aware of. I would suggest creating a module, the module would be responsible for:

  1. Retrieving the values from the query string
  2. Opening the page in add mode and pass the default values

The module will be the piece in-between. You'll actually open the link to the module, not the case page and pass querystring values to it, like this:

[Creatio URL]/0/Shell#UsrMyModuleName?someField=SomeValue&otherField=Other

See more about creating a module like this here: https://academy.creatio.com/docs/8.x/dev/development-on-creatio-platform/8.1/front-end-development/classic-ui/modules/module-types/examples/create-a-standard-module 

Then, it would retrieve the values and open the page for add mode and pass default values, see: https://customerfx.com/article/opening-an-edit-page-to-add-or-edit-a-record-via-code-in-a-creatio-freedom-ui-page/

Alternatively, you could add some code into the add page for case, to retrieve the values from the query string if the page is in add mode, but that adds a lot of extra stuff to the case page and the module might be a cleaner approach.

Ryan

There is nothing out of the box that does this that I am aware of. I would suggest creating a module, the module would be responsible for:

  1. Retrieving the values from the query string
  2. Opening the page in add mode and pass the default values

The module will be the piece in-between. You'll actually open the link to the module, not the case page and pass querystring values to it, like this:

[Creatio URL]/0/Shell#UsrMyModuleName?someField=SomeValue&otherField=Other

See more about creating a module like this here: https://academy.creatio.com/docs/8.x/dev/development-on-creatio-platform/8.1/front-end-development/classic-ui/modules/module-types/examples/create-a-standard-module 

Then, it would retrieve the values and open the page for add mode and pass default values, see: https://customerfx.com/article/opening-an-edit-page-to-add-or-edit-a-record-via-code-in-a-creatio-freedom-ui-page/

Alternatively, you could add some code into the add page for case, to retrieve the values from the query string if the page is in add mode, but that adds a lot of extra stuff to the case page and the module might be a cleaner approach.

Ryan

Show all comments
whatsapp
integration
Sandbox
8.0

I've recently created a WhatsApp sandbox environment and followed the documentation and TechHour tutorial keenly. However, when I test the sandbox integration nothing occurs. I am sure that I have set up the channel, queue, and actions correctly and routed my sandbox settings properly as well. I decided to test the webhook with postman and kept on receiving a "204 no content" message 

 

 

I thought maybe because it is a CRM demo environment and I have created a custom package perhaps the omni chat messenger packages we're missing and that could be the issue, however not sure since I haven't tested it yet. If anyone has any insight on the probable cause please let me know!

 

Thanks,

Jose

Like 0

Like

1 comments

Hello, 

Please contact our support team directly at support@creatio.com so we could properly analyze your request.

Show all comments
webservice
url
file
integration
Studio_Creatio
8.0

Hello. 

 

I'm doing an Web services to send a document to sign, the api request the Url of the document so I'm using the following link https:[creatio instance]/0/rest/FileService/GetFile/70ec5d9f-a55e-4f5c-8f59-30d2c5149c4a/ef68e95e-ef77-eddf-dfa8-685557ee4875

 

70ec5d9f-a55e-4f5c-8f59-30d2c5149c4a correspons to the  UId from the SysSchema table where the attachments are stored and the ef68e95e-ef77-eddf-dfa8-685557ee4875 is the Id of the attachment. This URL allows me to dowloand the document to my computer, so I know that is the right link but when I used it in the web service it says that there is no document. 

 

The json of the request is the following 

{
 
    "url_doc": {
 
        "url": "https://151929-crm-bundle.creatio.com/0/rest/FileService/GetFile/70ec5d9f-a55e-4f5c-8f59-30d2c5149c4a/ef68e95e-ef77-eddf-dfa8-685557ee4875",
 
        "name": "Contrato.pdf"
 
    },
 
    "stickers": [
 
        {
 
            "authority": "Vinculada a Correo Electronico por Liga",
 
            "stickerType": "line",
 
            "dataType": "email",
 
            "email":"laura@artica.digital",
 
            "data": "laura@artica.digital",
 
            "imageType": "stroke",
 
            "page": 0,
 
            "rect": {
 
                "lx":74.88173,
 
               "ly":312.32596,
 
               "tx":196.9875,
 
               "ty":373.37885
 
            }
 
        }
 
    ]
 
}

 

When I sent the request the response is 

 

{
    "error": "No document"
}

 

I had try this request with a Dropbox URL and works fine but I need to send the documents that are generated by the Word Reports. That why I'm trying to get the document from Creatio using the URL the API also gives me the option of sending the document using base64 but I dont know how to convert the file easly. 

 

Can you help me please to know what is happenig? 

Thank you

Like 0

Like

4 comments

The reason why this isn't working is because FileService/GetFile requires authentication to read. This is not an anonymous endpoint. The receiver of this, where ever you're sending this URL of the document to, is actually getting a 401 Unauthorized. 

You'd have to either go the route of sending the base64 of the file, or expose an anonymous service in Creatio to provide the file to the other service.

Ryan

Ryan Farley,

Thank you, can you explain me please how can I convert the file to base64 please, I had see some examples but I not sure if I can do it using a script task in a business process or a source code 

Laura Jurado,

The code would look something like this (not tested, but this should get you started). For this, I have two process params, one a uniqueidentifier AccountFileId (an Id of an account file) and second an unlimited text AccountFileBase64. The script task would look something like this:

var fileId = Get<Guid>("AccountFileId");
 
var entity = UserConnection.EntitySchemaManager.GetInstanceByName("AccountFile").CreateEntity(UserConnection);
if (entity.FetchFromDB(fileId))
{
    var base64FileData = Convert.ToBase64String(entity.GetBytesValue("Data"));
    Set("AccountFileBase64", base64FileData);
}

Ryan

Ryan Farley,

Thank you very much. It helped me a lot 

Show all comments
Azure
AD
integration
Azure Active Directory
Studio_Creatio
8.0

Hello,

 

Is anyone aware of a direct integration to Azure AD for OU and User setup? Or is it on the product roadmap?

 

The current LDAP solution will not work.

Like 0

Like

1 comments

Hello,

As for now, there is no such functionality. We have already registered the idea for our R&D team to implement this functionality in further releases.
We will assign your case to this project to increase its priority.

Thank you for choosing Creatio!

Show all comments
Discussion
Index
database
integration

It seems that any indexes (unique or otherwise) created in Creatio config are created to ignore case. This is not good from a data perspective, and prevents actual uniqueness checking in cases where the case of the characters matter. We need to be able to configure unique indexes to be case sensitive - I think ideally this would be the default option and you could check a checkbox in the config to ignore case if required, but certainly you should be able to generate normal database unique indexes which are case sensitive.

1 comments

Hello,

Thank you for this idea, we will translate it to our developers and they will analyze what can be done.

Show all comments
Discussion
devlabs
Development
integration

Clio new release provides improved way to integrate data exchange between third party systems and Creatio. We simplified ATF.Repository usage in external dotnet projects. Details described in this article

0 comments
Show all comments
Mobile app
map
integration
Mobile_Creatio
8.0

Hello , i have this requirement where in creatio mobile app i need to have a map view .

I can't a map app outside of creatio . is there any solutions ? any proposition ? any way to help me integrate a map inside my mobile app instance ?

Like 0

Like

4 comments

Hello,

 

You can inspect the Account address detail as an example of integration with OpenStreetMaps in the system and Field Force application as an example of maps functionality on mobile apps.

Bogdan,

can you explain more please ?

Bogdan,

these posts are using maps from outside creatio , in my case i want the map view integrated within creatio map 

Show all comments
sql
integration
Studio_Creatio
8.0

Hi all, 



I am trying to figure out, how do we connect Creatio directly to another (webapp's/app) SQL database which is not the Creatio one, without needing to pass through an API.

 

If we keep it simple, Pipedrive, they are able to provide SQL connections through Zapier, with triggers on both sides (if a change in Pipedrive --> add a column in the other SQL db OR if column added in SQL DB, do x action in Pipedrive). https://zapier.com/apps/pipedrive/integrations/sql-server 



How do we replicate such direct (bi-directional) integration with Creatio and another sql db without the need for the other web app to expose or call an API ?



Cheers, 



Damien

Like 2

Like

1 comments

Hi Damien,

If I understood your question correctly, I recommend you look at this discussion.

As described there, the most suitable solution, in this case, is a business process.

Show all comments