Hello Alessio,

I believe this [1] commit might be interesting for you :)
I have added "createFile" method and basic test to prove it works :)

[1] 
https://github.com/openmeetings/openmeetings-api-plugin/commit/51ccde85b71bc32b1e4c5074171822606606dfad

On Thu, Sep 22, 2016 at 11:35 PM, Maxim Solodovnik <[email protected]> wrote:
> Hello Alessio,
>
> I don't have time right now to implement it in PHP, maybe next week :((
>
> Here is the example of how this method is currently used [1] [2], it's not
> PHP but you will get an idea
> RestCall is custom class [3]
> I'll try to improve PHP API, please ping me if I'll be too silent
>
> [1]
> https://github.com/apache/openmeetings/blob/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/fileExplorer.lzx#L212
> [2]
> https://github.com/apache/openmeetings/blob/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/fileExplorer.lzx#L225
> [3]
> https://github.com/apache/openmeetings/blob/3.1.x/openmeetings-flash/src/main/swf/base/remote/restCall.lzx#L172
>
> On Thu, Sep 22, 2016 at 10:21 PM, Alessio Falsetti <[email protected]>
> wrote:
>>
>> Hi Maxim,
>>
>> I made many test, this is an example of what I tried to do:
>>
>> ----------------------------------
>> $restService = new OmRestService();
>> $path = "http://www.mysite.com/myfile.jpg";;
>> $data = array("ownerId" => 2,
>> "externalId" => 1000,
>> "externalType" => "moodle",
>> "roomId" => 12,
>> "parentId" => 0,
>> "name" => "myfile.jpg"
>> );
>>
>> $streamData = new CurlFile($path, 'image/jpg');
>>
>> $params = array("file" => json_encode($data),
>> "stream" => $streamData
>> );
>> // Chiama la funzione per importare i file
>> $result = $restService->call($this->getRestUrl("file"),
>> RestMethod::POST,
>> $this->sessionId,
>> $params,
>> null,
>> "fileExplorerItemDTO");
>> ----------------------------------
>>
>> If I use
>> $streamData = '@'.$path
>>
>> or
>>
>> new CurlFile($path, 'image/jpg');
>>
>> the result does not change. Service return this error: "Request
>> OpenMeetings! OpenMeetings Service failed and no response was returned.
>> Additioanl info:"
>> but Additional info is empty.
>>
>> No duobt there is an error in the SOAP parameters, but digging in the Java
>> source code of OM, in the class FileExplorerItemDTO there is'nt method
>> fromString, which has been present in the RoomDTO class or ExternalUserDTO.
>>
>> Where is the mistake?
>>
>> Thank you, and please let me know.
>>
>>
>> Alessio
>>
>>
>>
>> 2016-09-20 20:18 GMT+02:00 Maxim Solodovnik <[email protected]>:
>>>
>>> Current version of the Gateway is unable to work with files
>>> But there are lots of examples (for ex. here
>>> http://blog.derakkilgo.com/2009/06/07/send-a-file-via-post-with-curl-and-php/)
>>> how this can be implemented
>>> I can add it to the api
>>> https://github.com/openmeetings/openmeetings-api-plugin
>>> but unfortunately not right now :(
>>>
>>> On Tue, Sep 20, 2016 at 11:56 PM, Alessio Falsetti
>>> <[email protected]> wrote:
>>>>
>>>> Hello Hemant,
>>>>
>>>> thank you for your help! I had already seen this documentation, but
>>>> there is still the problem of inserting files into the room. With the
>>>> previous version of OM Gateway & APIs, I call this:
>>>>
>>>> $result = $restService->call($this->getRestUrl("FileService") .
>>>> "importFile?SID=" . $this->session_id
>>>> . "&externalUserId=" . urlencode($userId)
>>>> . "&externalFileId=" . $externalFileId
>>>> . "&externalType=" . urlencode($externalType)
>>>> . "&room_id=" . urlencode($room_id)
>>>> . "&isOwner=" . $isOwner
>>>> . "&path=" . urlencode($path)
>>>> . "&parentFolderId=" . $parentFolderId
>>>> . "&fileSystemName=" . urlencode($fileSystemName));
>>>>
>>>> and everything works smoothly, OM takes the files directly from the URL
>>>> specified in "path".
>>>>
>>>> With the new version, this no longer works, and the funcion "add" is
>>>> described in the documentation as follows:
>>>> ------------------------------------------------------------------
>>>>
>>>> add
>>>>
>>>> @POST
>>>> @Consumes(value="multipart/form-data")
>>>> @Path(value="/")
>>>> public FileExplorerItemDTO add(@QueryParam(value="sid")
>>>>                                String sid,
>>>>                                FileExplorerItemDTO file,
>>>>                               InputStream stream)
>>>>           throws
>>>> org.apache.openmeetings.webservice.error.ServiceException
>>>>
>>>> to add a folder to the private drive, set parentFileExplorerItemId = 0
>>>> and isOwner to 1/true and externalUserId/externalUserType to a valid user
>>>> Parameters:sid - The SID of the User. This SID must be marked as logged
>>>> infile - the The file to be addedstream - the The file to be added 
>>>> Returns:-
>>>> Object created
>>>> ------------------------------------------------------------------
>>>>
>>>> How do I pass the FileExplorerItemDTO and, above all, the InputStream
>>>> through OmGateway.php or OmRestService,php??
>>>>
>>>> Thank you and let me know!
>>>>
>>>> Alessio
>>>>
>>>>
>>>>
>>>>
>>>> 2016-09-19 19:13 GMT+02:00 Coscend@OM <[email protected]>:
>>>>>
>>>>> Hello Alessio,
>>>>>
>>>>> Guide and snippets:
>>>>> https://github.com/openmeetings/openmeetings-api-plugin/wiki
>>>>> Moodle plugin:  http://openmeetings.apache.org/MoodlePlugin.html
>>>>>
>>>>> Thank you.
>>>>>
>>>>> Sincerely,
>>>>>
>>>>> Hemant K. Sabat
>>>>>
>>>>> Coscend Communications Solutions
>>>>> Web site: www.Coscend.com
>>>>> ------------------------------------------------------------------
>>>>> CONFIDENTIALITY NOTICE: See 'Confidentiality Notice Regarding E-mail
>>>>> Messages from Coscend Communications Solutions' posted at:
>>>>> http://www.Coscend.com/Terms_and_Conditions.html
>>>>>
>>>>>
>>>>>
>>>>> -----Original Message-----
>>>>> From: Alessio Falsetti [mailto:[email protected]]
>>>>> Sent: Monday, September 19, 2016 12:08 PM
>>>>> To: [email protected]
>>>>> Subject: REST API
>>>>>
>>>>> Hi,
>>>>>
>>>>> through the REST API of OpenMeetings (3.1.1), I'm trying to upload
>>>>> files into a room.
>>>>>
>>>>> I'm trying to use the FileWebService API to add the files. Reading the
>>>>> documentation I seem to have understood that the function to be used is 
>>>>> ADD,
>>>>> but until now I have not been successful use it, because I have not clear
>>>>> what and how parameters needs to pass to the function.
>>>>>
>>>>> Where can I find a *working* example in PHP?
>>>>> Thanks a lot!
>>>>>
>>>>> Alessio
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> -----
>>>>> No virus found in this message.
>>>>> Checked by AVG - www.avg.com
>>>>> Version: 2016.0.7797 / Virus Database: 4656/13044 - Release Date:
>>>>> 09/19/16
>>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> WBR
>>> Maxim aka solomax
>>
>>
>
>
>
> --
> WBR
> Maxim aka solomax



-- 
WBR
Maxim aka solomax

Reply via email to