Difference between revisions of "GrowlNotify Mac"

From Mudlet
Jump to navigation Jump to search
Line 1: Line 1:
 
This script is made by [[user:phoenix|ThePhoenix]] to work with the Mac app, Growl. It requires an additional bit that allows growl from terminal, called growlNotify.
 
This script is made by [[user:phoenix|ThePhoenix]] to work with the Mac app, Growl. It requires an additional bit that allows growl from terminal, called growlNotify.
=Script=
+
[[Category:Mudlet Package Listing]]
<lua>
+
{| class="wikitable" style="width: 70%;"
 +
|-
 +
| style="width: 10%" | Game || non-mud specific
 +
|-
 +
| By || <!-- handle|alias|name --> [[User:Wiki_user_name|Wiki_user_name]]
 +
|-
 +
| Download || none, see usage
 +
|-
 +
| Dependencies || <!-- any package dependencies|mudlet version requirements --> Mudlet 4.17, MacOS
 +
|}
 +
 
 +
= Description = 
 +
<!-- A description about what your script accomplishes. -->
 +
 
 +
Create a [https://en.wikipedia.org/wiki/Growl_(software) growl] notification from Mudlet.
 +
 
 +
= Usage =
 +
<!-- include function parameters and some usage details (either screenshots or <code>preformatted script output</code> so players can understand how to use your script -->
 +
 
 +
<syntaxhighlight lang="lua">
 
-------------------------------------------------
 
-------------------------------------------------
 
--    This script works with Growl for Mac    --
 
--    This script works with Growl for Mac    --
Line 46: Line 65:
 
   end
 
   end
 
end
 
end
</lua>
+
</syntaxhighlight>
  
 
=Example Script from Trigger=
 
=Example Script from Trigger=

Revision as of 00:40, 19 January 2024

This script is made by ThePhoenix to work with the Mac app, Growl. It requires an additional bit that allows growl from terminal, called growlNotify.

Game non-mud specific
By Wiki_user_name
Download none, see usage
Dependencies Mudlet 4.17, MacOS

Description

Create a growl notification from Mudlet.

Usage

-------------------------------------------------
--     This script works with Growl for Mac    --
--   Must have growlnotify installed as well   --
-------------------------------------------------



function growlNotify(title, message, priority, sticky)
--sounds
--Change these sounds to what you want, and have. --playSoundFile is buggy on a mac, and will crash you eventually.
-- use a beep along with the notification for the appropriate program inside Growl itself.
 local  soundAlert = "/System/Library/Sounds/Indigo.aiff"
 local  soundNotify = "/System/Library/Sounds/Temple.aiff"

local path, icon -- Do not touch this line

--Path: This is the default path, change it if you have it somewhere else.
        path = "/usr/local/bin/growlnotify"
--Icon: This is an advanced change, try it if you want.
        icon = "-a Mudlet.app"


        assert(type(priority)=="boolean" or type(priority)=="nil",
         "Wrong type for the priority!")
        assert(type(sticky)=="boolean" or type(sticky)=="nil",
         "Wrong type for the priority!")

        sticky = sticky and "-s" or ""
        message = string.gsub(message, [["]], "'") or ""
        priority = priority or false
        title = title or "Mudlet"
   if not priority and not hasFocus() then
        --playSoundFile(soundNotify) --playSoundFile is buggy on a mac, and will crash you eventually.
--use a beep along with the notification for the appropriate program inside Growl itself.
        os.execute( path .. " ".. sticky .. " " .. icon .. [[ -m " ]] ..
         message .. [[ " " ]]..title..[[ "]])
   end
   if priority then
--      --playSoundFile(soundAlert) --playSoundFile is buggy on a mac, and will crash you eventually.
--use a beep along with the notification for the appropriate program inside Growl itself.
        os.execute( path .. " ".. sticky .. " " .. icon .. [[ -p 2 -m " ]] ..
         message .. [[ " " ]]..title..[[ "]])
   end
end

Example Script from Trigger

Exact match trigger
A soulmaster entity lets loose a horrible scream as a dark stream of primal chaos flows from it and into your very being. <lua> growlNotify("ANTITHEFT!", "A soulmaster has taken possesion of you!", true,true) </lua> It will pop up whether or not your mudlet window has focus - first true makes it priority, and therefor something that will always show.
This will pop up a sticky alert - second true makes it sticky.