kaltura / server

The Kaltura Platform Backend. To install Kaltura, visit the install packages repository.
https://github.com/kaltura/platform-install-packages
GNU Affero General Public License v3.0
376 stars 174 forks source link

Kaltura PHP 5.3 Client API Library missing CaptionAssetService #3185

Closed charles-rumley closed 9 years ago

charles-rumley commented 9 years ago

Hopefully it'll be an easy fix, as the < 5.3 PHP client already contains the CaptionAssetContainer service.

kaltura-hooks commented 9 years ago

Hi @charles-rumley,

Thank for you reporting an issue and helping improve Kaltura!

To get the fastest response time, and help the maintainers review and test your reported issues or suggestions, please ensure that your issue includes the following (please comment with more info if you have not included all this info in your original issue):

    # rpm -qa "kaltura*"
For deb based systems:
    # dpkg -l "kaltura-*"
    # tail -f /opt/kaltura/log/*.log /opt/kaltura/log/batch/*.log | grep -A 1 -B 1 --color "ERR:\|PHP\|trace\|CRIT\|\[error\]"

and paste the output.

For general troubleshooting see: https://github.com/kaltura/platform-install-packages/blob/Jupiter-10.13.0/doc/kaltura-packages-faq.md#troubleshooting-help

If you only have a general question rather than a bug report, please close this issue and post at: http://forum.kaltura.org

Thank you in advance,

KalturaCommunity-zz commented 9 years ago

Hello,

Looking at the contents of http://cdnbakmi.kaltura.com/content/clientlibs/php53_14-05-2015.tar.gz

$ grep CaptionAssetService /tmp/php53/* -r /tmp/php53/library/Kaltura/Client/Plugin/Caption/Service/CaptionAssetService.php:class CaptionAssetService extends \Kaltura\Client\ServiceBase /tmp/php53/library/Kaltura/Client/Plugin/Caption/CaptionPlugin.php: * @var Service\CaptionAssetService /tmp/php53/library/Kaltura/Client/Plugin/Caption/CaptionPlugin.php: 'captionAsset' => $this->getCaptionAssetService(), /tmp/php53/library/Kaltura/Client/Plugin/Caption/CaptionPlugin.php: * @return \Kaltura\Client\Plugin\Caption\Service\CaptionAssetService /tmp/php53/library/Kaltura/Client/Plugin/Caption/CaptionPlugin.php: public function getCaptionAssetService() /tmp/php53/library/Kaltura/Client/Plugin/Caption/CaptionPlugin.php: $this->captionAsset = new Service\CaptionAssetService($this->_client);

Seems to be fine.

Please share a code snippet.

Thanks,

May the source be with you,

Jess Portnoy

Kaltura Connect Virtual Summits 2015 - now on VOD! [connect.mediaspace.kaltura.com]

On Fri, 11 Sep 2015, charles-rumley wrote:

Hopefully it'll be an easy fix, as the < 5.3 PHP client already contains the CaptionAssetContainer service.

— Reply to this email directly or view it on GitHub.[ACH7XjRQWqk3w5lNf-7lDnNxSTQHM1afks5owiQ0gaJpZM4F7coU.gif]

charles-rumley commented 9 years ago

Thanks for the quick response Jess, it appears I was wrong. I didn't realize caption service was invoked via a plugin rather than directly through service/ (such as MediaInfoService or DocumentService).

I did run into another issue, I attempted to upgrade to the latest Kaltura 5.3 PHP API (commit de00e50), and I began receiving permission denied errors for any service that I attempted to use. No application code (outside of Composer) was changed, and yet I could not access any Kaltura services after upgrading. Downgrading to commit 8658181 fixed the issue.

If you'd like this created as a separate issue, I'd be happy to do so!

jessp01 commented 9 years ago

Hello Charles,

The latest Kaltura client libs, i.e, those generated from branch 10.20.0, are no longer compatible with Kaltura server version 10.19.0 which is why you are getting the error. My guess is you're getting something like: PHP Fatal error: Uncaught exception 'KalturaClientException' with message 'failed to unserialize server result <?xml version="1.0" encoding="utf-8"?>KalturaAPIExcept io nMISSING_MANDATORY_PARAMETERMissing parameter "secret"KalturaApiExceptionArgPARAM_NAMEsecret</it in /opt/kaltura/web/content/clientlibs/php5/KalturaClientBase.php:412 Stack trace:

0

/opt/kaltura/web/content/clientlibs/php5/KalturaClient.php(6713):

In order to work against SaaS, use the clients either from the official page here: http://www.kaltura.com/api_v3/testme/client-libs.php

or from branch 10.19.0 which you can get here: https://github.com/kaltura/KalturaGeneratedAPIClientsPHP53/tree/10.19.0

Closing the issue but if you have any other questions, feel free.

jessp01 commented 9 years ago

Clientlibs for PHP are also available via composer here: https://packagist.org/packages/kaltura/api-client-library#10.19.0.x-dev

jessp01 commented 9 years ago

Ah, one more small note for the future:) Indeed captions are implemented as a plugin. Whenever in doubt, going to http://www.kaltura.com/api_v3/testme/# and selecting the relevant service and action and then hitting 'Show code example' is a very quick way to get started on a specific 'service':)

For captions for example, you'd see: $captionPlugin = KalturaCaptionClientPlugin::get($client); $result = $captionPlugin->captionAsset->add($entryId, $captionAsset);