aboutsummaryrefslogtreecommitdiffstats
path: root/conf.d/project/lua.d/onload-audio-controls.lua
blob: 48496325817fab14313a50b2dab31b1679d5938d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
--[[
  Copyright (C) 2016 "IoT.bzh"
  Author Fulup Ar Foll <fulup@iot.bzh>
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at
 
    http://www.apache.org/licenses/LICENSE-2.0
 
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
  
 
  Provide sample policy function for AGL Advance Audio Agent
--]]

function Audio_Init_CB (status, result, context)
    print ("--inlua:Audio_Init_CB-- result=", Dump_Table(result))
    print ("--inlua:Audio_Init_CB-- context=", Dump_Table(context))
 
    AFB:notice("Audio_Init_Hal_CB result='%s' context='%s'", result, context)
      
end

-- Function call at binding load time
function Audio_Init_Hal(args, query)

   local nested = {
    ["next1"]=1234,
    ["next2"]="nested",
    ["next3"]=9999,
   }
   local context = {
    ["arg1"]=1234,
    ["arg2"]=nested,
    ["arg3"]=5678,
   }

    print ("--inlua:Audio_Init-- response=", Dump_Table(responseT))

    print("myplug=",  Dump_Table(MyPlug));

    -- This routine is defined in C sample plugin
    local status=MyPlug:Lua2cHelloWorld1(nested)
    
    -- query asynchronously loaded HAL
    AFB:service ('alsacore', 'hallist', {}, "Audio_Init_CB", context)
 
end

function Audio_Set_Navigation(args, query)

    AFB:notice ("LUA:Audio_Set_Use_Case args=%s query=%s", args, query);

    -- synchronous call to alsacore service
    local error,data= AFB:callsync ('alsacore', 'ping', {})  
    if (error) then
      AFB:error ("LUA:Audio_Set_Use_Case FAIL args=%s", args)
    else 
      AFB:notice ("--LUA:Audio_Set_Use_Case DONE args=%s response=%s", args, data["response"])
    end

    -- return OK
    return 0
end