HTTPセッションを維持しながらOracle Service CloudからカスタムXMLメッセージを送信できますか?PHPコードを使用したサービスクラウドからのHTTPセッション
<?php
use \Rightnow\Connect\v1_2 as RNCPHP;
use \Rightnow\CPM\v1 as RNCPM;
$url1 = "";
$startInterviewHeaders = array("SOAPAction: http://oracle");
$startInterview;
// session
//$strCookie = 'PHPSESSID=' . $_COOKIE['PHPSESSID'] . '; path=/';
if(!function_exists("\curl_init")){
\load_curl();
echo "curl loaded";
} else {
echo "curl already exists ";
}
$ch = curl_init();
curl_setopt($ch, CURLOPT_COOKIE, $strCookie);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_URL, $url1);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_POSTFIELDS, $startInterview);
curl_setopt($ch, CURLOPT_HTTPHEADER, $startInterviewHeaders);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$startInterviewresponse = curl_exec($ch);
//echo $response;
$http_status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$curl_errno= curl_errno($ch);
echo "</br> HTTP status: " . $http_status . "</br> cURL error: " .$curl_errno . "</br>";
curl_close($ch); // close cURL
echo $startInterviewresponse;
?>
EDIT:
は、これまでのところ、私はカールを使用して単一のメッセージを送信するために管理している上記のコードは、単一のメッセージを送信し、応答を取得しますが、私はCURLOPT_COOKIEJARとHTTPセッションを維持しようとすると、 CURLOPT_COOKIEFILE、2番目のcURLメッセージの応答では、アクティブなセッションが存在しないことを通知します。
sessions.com.oracle.determinations.server.exceptions.NoActiveInterviewExceptionaction "Investigate" can not be performed without an active interview
私はセッションを維持するために使用されるコード(のRightNow環境外でテストするときに働いていた)
curl_setopt($ch,CURLOPT_USERAGENT, $useragent);
curl_setopt($ch, CURLOPT_COOKIESESSION, true);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie-name'); //could be empty, but cause problems on some hosts
curl_setopt($ch, CURLOPT_COOKIEFILE, '/var/www/ip4.x/file/tmp'); //could be empty, but cause problems
ありがとう!
「クラッシュ」を定義します。どのようなエラー、出力、または結果が得られていますか。 – drew010
rightnow-crm土地では、何も言わない一般的なエラーです。ちょっと遊んだ後、私はcrmで一時ファイルを作ることができないと確信しています。回避策はありますか?セッションに変数を格納することはできますか? – Ward