스마트 플러그 스크립트

스마트 플러그

대화가 받은 편지함 페이지에서 선택되면, 설정 페이지에서 활성화된 스마트 플러그가 선택된 대화의 컨텍스트 내에서 순서대로 실행됩니다.



스마트 플러그는 오른쪽에 별도의 창으로 로드됩니다. 이는 상담원에게 현재 대화에 대한 컨텍스트 정보를 제공합니다.



플레이스홀더:

다음 값들은 스마트 플러그 스크립트에서 사용할 수 있습니다.

  1. {{user.email}} - 현재 사용자의 이메일
  2. {{user.phone}} - 현재 사용자의 전화번호
  3. {{user.id}} - 앱에서 제공하는 사용자 식별자
  4. {{user.tag.key_of_usermeta}} - 앱에서 제공하는 작은 스네이크 케이스 키에 대한 사용자 메타 값. 예를 들어, 앱에서 journey_id를 보내면, 스마트 플러그에서 {{user.tag.journey_id}}로 동일한 값을 얻을 수 있습니다.


이 플레이스홀더들은 스크립트가 실행될 때 동적으로 채워집니다. 


주의사항

플레이스홀더에 적절한 값이 없으면 빈 문자열로 대체됩니다.

     

Ajax 요청

브라우저가 동일한 도메인에서 발생하지 않은 요청을 거부하기 때문에, 확장 프로그램에서 직접 타사 사이트로 Ajax 요청을 할 수 없습니다 (CORS). 이를 해결하기 위해, 우리는 그러한 요청을 보내기 위한 프록시를 제공합니다.


다음은 프록시 요청의 기본 예제입니다.


$.ajax({
        method: "POST",
        url: "/app/extension_proxy",
        processData: false,
        data: JSON.stringify({
           url: "THIRD_PARTY_URL_HERE",
           method : "PUT",
           headers : {
              Authorization : "Basic AUTH_KEY_HERE",
              "Content-Type": "application/json"
           },
           formParameters : {},
           rawBody : '{"requestName" : "Sample PUT rquest","email":"{{user.email}}","phone":"{{user.phone}}"}'
        })
      })

   

샘플 스크립트


<script>
  var makeRequest = function() {
    jQuery.ajax({
      method: "POST",
      url: "/app/extension_proxy",
      processData: false,
      data: JSON.stringify({
        header: { "Authorization": "Basic " + btoa('API KEY' + ":" + 'X') },
        url: "https://domian.freshdesk.com/api/v2/tickets/2",
        method : "GET"
      }),
      success: function(data) {
        console.log(data);
      },
    });
  };
  makeRequest();
</script>   


본문은 다음을 포함하는 JSON 문자열이어야 합니다:


속성설명
url
API의 URL
method
API 호출을 위한 HTTP 메서드
headers
API에 전달할 선택적 헤더
formParameters
POST 요청과 함께 폼 데이터를 제출하는 데 사용
rawBody
POST 요청과 함께 사용할 원시 문자열 데이터


참고: 데이터를 폼 매개변수로 처리하지 않도록 processData를 false로 설정해야 합니다.






이 문서가 도움이 되었나요?

Freshchat AI 도우미

스마트 플러그 스크립트

AI 어시스턴트 초기화 중...