Roku Developer Program

Developers and content creators—a complete solution for growing an audience directly.
cancel
Showing results for 
Search instead for 
Did you mean: 
bounce
Level 7

Brightscript Error

I am getting the following error... What would cause this...
BRIGHTSCRIPT: ERROR: roSGNode.ObserveField: no active host node: pkg:/source/API.brs(37)

How can I fix this? This is occuring in a task

function API__Login(userData as Object) as Boolean
    result = true
    
    print "Logging in user:"
    account = userData
    m.LoginTask = createObject("RoSGNode","LoginTask")
    m.LoginTask.account = account
    m.LoginTask.observeField("results","loginResult")
    m.LoginTask.control = "RUN"
    sleep(2000)

    return result
end function


sub loginResult()

    if m.LoginTask.results.user.id <> invalid then
        print "registry write"
        RegWrite("stuff",m.LoginTask.results.user.stuff)
    end if
end sub


The task runs but loginResult never is called.
0 Kudos
1 Reply
joetesta
Level 10

Re: Brightscript Error

You should remove the lines: 
    sleep(2000)
    return result

The "return" is breaking things for you, and there's no need for the "sleep".

In your callback you could print out

print "results: "; m.LoginTask.results

to make sure you're getting the response you expect.  You might need to get the result's "body" instead... If the callback is never triggered then you need to debug your task and make sure it's setting its "m.top.results"
aspiring
0 Kudos